#!/usr/bin/env python
# -*- coding: utf-8 -*-
from xml.dom import minidom
import datetime
from program_interia import *
import os
from string import Template
def makeenvs(dict):
	for key in dict.keys():
		dict[key] = os.environ[dict[key]]
	return dict
def new_task():
	print "--- Wybierz program ---"
	posixenvs = {
			"homedir":"HOME",
		}
	adres = Template("$homedir/.tvtime/stationlist.xml")
	adres = adres.substitute(makeenvs(posixenvs))
	stationlist = minidom.parse(adres)

	cNodes = stationlist.childNodes
	#print stationlist.getElementsByTagName("station")[0].getAttribute("name")
	prog_list = []
	for i in stationlist.getElementsByTagName("station"):
		prog_list.append(i.getAttribute("name"))
		print len(prog_list), prog_list[len(prog_list)-1]
	nr_prog = int(raw_input("Numer programu: "))-1
	program = prog_list[nr_prog]
	
	print "--- Wprowadź datę (YYYY-MM-DD) puste dla dzisiaj ---"
	date = raw_input('Data: ')
	if date == "":
		now = datetime.datetime.now()
		date = now.strftime("%Y-%m-%d")
		print date
	timetable = get_program(program, date)
	print "--- Wprowadź godzinę rozpoczęcia nagrywania (HH:MM)---"
	time = raw_input('Godzina: ')
	nazwy = get_title_by_time(timetable, time)
	if len(nazwy) == 0:
		print "! O tej porze nie rozpoczyna sie żaden program"
		nazwa = raw_input('Podaj nazwę dla nagrania lub pozostaw puste aby zrezygnować: ')
		if nazwa == '':
			return 0
		nazwy.append(nazwa)
		nr_nazwy = 0
		q = 't'
	else:
		print "--- Wybierz program który chcesz nagrać ---"
		j = 1
		for i in nazwy:
			print j, i
			j+=1
		nr_nazwy = int(raw_input('Program: '))-1
		dlugosc = get_length_by_title(timetable, nazwy[nr_nazwy],time)
		print "--- Czas nagrywania ", dlugosc, " minut, do", datetime.timedelta(minutes=(dlugosc + title_to_minutes(time)))," ---"
		q = raw_input('Czy zmienić czas? (tak/NIE)')
	if q == 'tak' or q == 'TAK' or q == 'T' or q == 't':
		dlugosc = title_to_minutes(raw_input('Godzina zakończenia: ')) - title_to_minutes(time)
	print "+---------------   ZADANIE   --------------------"
	print "| Program: ", prog_list[nr_prog]
	print "| Nazwa: ", nazwy[nr_nazwy]
	print "| Data: ", date, " Czas: od ", time, " do ", datetime.timedelta(minutes=(dlugosc + title_to_minutes(time)))
	print "+------------------------------------------------"
	cron_line = time[3:5] + ' '+ time[0:2] + ' ' + date[8:10] + ' ' + date[5:7] + ' *'
	print cron_line
	return 1
def edit_task():
	print "edycja"
	return 1
